﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace Z2102WinForms.LX
{
    public partial class Form3 : Form
    {
        public Form3()
        {
            InitializeComponent();

            label1.Text = "上机练习3 字符串处理（要求分别用Console和WinForms实现）。";
            label2.AutoEllipsis = true;
            button1.Click += Button1_Click;

            panel1.Visible = false;
            buttonConsole.Click += delegate
            {
                Program.ExecConsoleApp("Z2102Console.LX.Class2");
            };
            buttonWinForms.Click += delegate
            {
                panel1.Visible = true;
            };
        }

        private void Button1_Click(object? sender, EventArgs e)
        {
            string str = textBox1.Text;
            if (str.Length <= 3)
            {
                label2.Text = "字符串长度不符合要求，请重新输入！";
                return;
            }

            //（1）
            label2.Text = $"（1）字符串的长度为：{str.Length}\r\n";

            //（2）
            int i = str.IndexOf('a');
            if (i > -1)
            {
                label2.Text += $"（2）第一个出现字母a的位置是：{i}\r\n";
            }
            else
            {
                label2.Text += "（2）字符串中不包含字母a\r\n";
            }

            //（3）
            string str1 = str.Insert(3, "hello");
            label2.Text += $"（3）插入hello后的结果为：{str1}\r\n";

            //（4）
            string str2 = str1.Replace("hello", "me");
            label2.Text += $"（4）将hello替换为me后的结果为：{str2}\r\n";

            //（5）
            string[] arr = str2.Split('m');
            label2.Text += $"（5）以m为分隔符分离后的字符串有{arr.Length}个：";
            for (int j = 0; j < arr.Length; j++)
            {
                label2.Text += arr[j] + " ";
            }
            label2.Text += "\r\n";
        }

        private void Form3_Load(object sender, EventArgs e)
        {

        }
    }
}
